Telegram Group & Telegram Channel
قطار self-supervised به ایستگاه tabular data رسید!

قطعا در مدح self-supervied  learning زیاد شنیدید و در این پست (https://www.tg-me.com/tw/NLP stuff/com.nlp_stuff/298) هم روش‌هاش در NLP رو مرور کردیم. یکی از محدودیت‌های اصلی self-supervised learning اینه که خیلی وابسته به دامین و مودالیتیه. مثلا روش‌های حوزه تصویر به سختی برای حوزه متن قابل انجامه. حالا مردانی مرد از google research به پا خاسته‌اند و سعی کردند روشی عمومی برای self supervised learning ارایه کنند که حتی بر روی tabular data هم بتونه جواب بده. معماری کلی این روش رو در تصویر زیر می‌تونید ببینید. مانند همه روش‌های SSL که در NLP بررسی کردیم، طبیعتا اینجا هم فاز pre-training و fine-tuning داریم که اساسا وجود همین پارادایم هم باعث میشه در محیط‌هایی که داده لیبل‌دار کمتری وجود داره بهتر عمل بکنه. ایده اصلی در فاز pre-training هست که از denoising auto encoderها الهام گرفته شده. در این روش به ازای یه batch از داده ترین به صورت رندم یک زیرمجموعه‌ای از فیچرها انتخاب میشه و این فیچرها رو corrupt می‌کنند. روش corruption هم به این صورته که به صورت رندم با همون فیچرها از سمپل‌های دیگه جایگزین میشه. حالا همون‌طور که در قسمت بالای تصویر می‌بینید دیتای سالم و دیتای corruptشده به ‌طور همزمان (تعریف همزمان اینه که دو تا شبکه داریم که full parameter sharing انجام دادند) به یک شبکه انکودر f داده می‌شه که داده رو به فضای بزرگتری می‌برند و سپس به یک شبکه g داده می‌شه که داده رو به فضای کوچکی میبره و بعد با استفاده از InfoNCE که یه loss function مشهور در عرصه SSL هست تفاوت خروجی شبکه به ازای دیتای corruptشده و دیتای سالم به دست میاد و کار ترینینگ انجام میشه (InfoNCE عملا شبیه یه categorical cross entropy عمل می‌کنه که به ازای نمونه‌های شبیه به هم مقدار کمی خروجی می‌ده و به ازای نمونه‌های negative که دور از هم هستند هم مقدار زیادی رو خروجی میده).
در فاز fine tuning عملا شبکه g  کنار گذاشته میشه و یک classifier head بر روی شبکه f گذاشته میشه و کل شبکه fine tune میشه.
برای تست این روش هم از دیتاست OpenML-CC18 استفاده شده که ۷۲ تسک دسته‌بندی داره و چون این مساله برای tabular data بوده ۳ تا از دیتاست‌هاش رو (CIFAR , MNIST, Fashion MNIST) کنار گذاشتند و عملا بر روی ۶۹ دیتاست تست گرفتند که روی برخی حتی با داده کمتر، بهبود هم داشته. مقاله خیلی جمع و جور و به زبان ساده و با جزییات تکنیکال نوشته شده و توصیه می‌کنیم حتما بخونید.

لینک مقاله:
https://arxiv.org/abs/2106.15147

لینک گیت‌هاب:
https://github.com/clabrugere/pytorch-scarf

#read
#paper

@nlp_stuff



tg-me.com/nlp_stuff/312
Create:
Last Update:

قطار self-supervised به ایستگاه tabular data رسید!

قطعا در مدح self-supervied  learning زیاد شنیدید و در این پست (https://www.tg-me.com/tw/NLP stuff/com.nlp_stuff/298) هم روش‌هاش در NLP رو مرور کردیم. یکی از محدودیت‌های اصلی self-supervised learning اینه که خیلی وابسته به دامین و مودالیتیه. مثلا روش‌های حوزه تصویر به سختی برای حوزه متن قابل انجامه. حالا مردانی مرد از google research به پا خاسته‌اند و سعی کردند روشی عمومی برای self supervised learning ارایه کنند که حتی بر روی tabular data هم بتونه جواب بده. معماری کلی این روش رو در تصویر زیر می‌تونید ببینید. مانند همه روش‌های SSL که در NLP بررسی کردیم، طبیعتا اینجا هم فاز pre-training و fine-tuning داریم که اساسا وجود همین پارادایم هم باعث میشه در محیط‌هایی که داده لیبل‌دار کمتری وجود داره بهتر عمل بکنه. ایده اصلی در فاز pre-training هست که از denoising auto encoderها الهام گرفته شده. در این روش به ازای یه batch از داده ترین به صورت رندم یک زیرمجموعه‌ای از فیچرها انتخاب میشه و این فیچرها رو corrupt می‌کنند. روش corruption هم به این صورته که به صورت رندم با همون فیچرها از سمپل‌های دیگه جایگزین میشه. حالا همون‌طور که در قسمت بالای تصویر می‌بینید دیتای سالم و دیتای corruptشده به ‌طور همزمان (تعریف همزمان اینه که دو تا شبکه داریم که full parameter sharing انجام دادند) به یک شبکه انکودر f داده می‌شه که داده رو به فضای بزرگتری می‌برند و سپس به یک شبکه g داده می‌شه که داده رو به فضای کوچکی میبره و بعد با استفاده از InfoNCE که یه loss function مشهور در عرصه SSL هست تفاوت خروجی شبکه به ازای دیتای corruptشده و دیتای سالم به دست میاد و کار ترینینگ انجام میشه (InfoNCE عملا شبیه یه categorical cross entropy عمل می‌کنه که به ازای نمونه‌های شبیه به هم مقدار کمی خروجی می‌ده و به ازای نمونه‌های negative که دور از هم هستند هم مقدار زیادی رو خروجی میده).
در فاز fine tuning عملا شبکه g  کنار گذاشته میشه و یک classifier head بر روی شبکه f گذاشته میشه و کل شبکه fine tune میشه.
برای تست این روش هم از دیتاست OpenML-CC18 استفاده شده که ۷۲ تسک دسته‌بندی داره و چون این مساله برای tabular data بوده ۳ تا از دیتاست‌هاش رو (CIFAR , MNIST, Fashion MNIST) کنار گذاشتند و عملا بر روی ۶۹ دیتاست تست گرفتند که روی برخی حتی با داده کمتر، بهبود هم داشته. مقاله خیلی جمع و جور و به زبان ساده و با جزییات تکنیکال نوشته شده و توصیه می‌کنیم حتما بخونید.

لینک مقاله:
https://arxiv.org/abs/2106.15147

لینک گیت‌هاب:
https://github.com/clabrugere/pytorch-scarf

#read
#paper

@nlp_stuff

BY NLP stuff




Share with your friend now:
tg-me.com/nlp_stuff/312

View MORE
Open in Telegram


NLP stuff Telegram | DID YOU KNOW?

Date: |

What is Telegram?

Telegram’s stand out feature is its encryption scheme that keeps messages and media secure in transit. The scheme is known as MTProto and is based on 256-bit AES encryption, RSA encryption, and Diffie-Hellman key exchange. The result of this complicated and technical-sounding jargon? A messaging service that claims to keep your data safe.Why do we say claims? When dealing with security, you always want to leave room for scrutiny, and a few cryptography experts have criticized the system. Overall, any level of encryption is better than none, but a level of discretion should always be observed with any online connected system, even Telegram.

How to Buy Bitcoin?

Most people buy Bitcoin via exchanges, such as Coinbase. Exchanges allow you to buy, sell and hold cryptocurrency, and setting up an account is similar to opening a brokerage account—you’ll need to verify your identity and provide some kind of funding source, such as a bank account or debit card. Major exchanges include Coinbase, Kraken, and Gemini. You can also buy Bitcoin at a broker like Robinhood. Regardless of where you buy your Bitcoin, you’ll need a digital wallet in which to store it. This might be what’s called a hot wallet or a cold wallet. A hot wallet (also called an online wallet) is stored by an exchange or a provider in the cloud. Providers of online wallets include Exodus, Electrum and Mycelium. A cold wallet (or mobile wallet) is an offline device used to store Bitcoin and is not connected to the Internet. Some mobile wallet options include Trezor and Ledger.

NLP stuff from tw


Telegram NLP stuff
FROM USA